import $http from 'axios'
import querystring from 'querystring'
import config from '@/config'
// const mockData = require('@/data.json')
// function returnData(data, flag) {
function returnData(data) {
  /*
  if (flag !== undefined) {
    return mockData.product[flag]
  }
  */
  if (data.code === 0) {
    return data.data
  } else {
    return []
  }
}
export default {
  // 获得分类
  getCate() {
    return $http.get(config.api + 'cate/list').then(res => returnData(res.data))
  },
  // 获得商品
  getProduct(id) {
    // var oldid = id
    if (id) {
      id = '?cate_id=' + id
    } else {
      id = ''
    }
    // return $http.get(config.api + 'product/list' + id).then(res => returnData(res.data, oldid % 3))
    return $http.get(config.api + 'product/list' + id).then(res => returnData(res.data))
  },
  // 获得详情
  getDetail(id) {
    return $http.get(config.api + 'product/view?product_id=' + id).then(res => returnData(res.data))
  },
  // 加入购物车
  addCart(params) {
    return $http.post(config.api + 'cart/add', querystring.stringify(params)).then(res => res.data)
  },
  // 用户登录
  getLogin(params) {
    return $http.get(config.api + 'login/check_login', querystring.stringify(params)).then(res => res.data)
  },
  // 用户登录
  getUserInfo() {
    return $http.get(config.api + 'user/info').then(res => res.data)
  },
  // 获得购物车列表
  getCartList(type) {
    return $http.get(config.api + 'cart/list?cart_type=' + type).then(res => res.data)
  },
  // 获得购物车列表
  getAddressList() {
    return $http.get(config.api + 'address/list').then(res => res.data)
  },
  // 获得城市地点
  getAddressArea() {
    return $http.get(config.api + 'address/area').then(res => res.data)
  },
  // 获得结算页数据
  getConfirmationList(type) {
    return $http.get(config.api + 'confirmation/list?cart_type=' + type).then(res => res.data)
  },
  // 创建订单
  getConfirmationCreate(params) {
    return $http.post(config.api + 'confirmation/create', querystring.stringify(params)).then(res => res.data)
  },
  // 支付获取签名
  payCallPay(orderid) {
    return $http.post(config.api + 'pay/call_pay', querystring.stringify({order_id: orderid, random: Math.random()})).then(res => res.data)
  },
  // 支付成功显示
  paymentStatus(orderid) {
    return $http.get(config.api + 'pay/payment_status?order_id=' + orderid).then(res => res.data)
  },
  // 获得城市地点
  addressAdd(params) {
    return $http.post(config.api + 'address/add', querystring.stringify(params)).then(res => res.data)
  },
  // 获得城市地点
  cartClear(type) {
    return $http.post(config.api + 'cart/clear?cart_type=' + type).then(res => res.data)
  },
  // 获得城市地点
  orderList(type) {
    let status = (type ? '?status=' + type : '')
    return $http.get(config.api + 'order/list' + status).then(res => res.data)
  },
  // 取消订单
  orderCancel(id) {
    return $http.get(config.api + 'order/cancel?order_id=' + id).then(res => res.data)
  },
  // 订单详情
  orderDetail(id) {
    return $http.get(config.api + 'order/detail?order_id=' + id).then(res => res.data)
  },
  // 订单详情
  addressSetDefault(id) {
    return $http.get(config.api + 'address/set_default?address_id=' + id).then(res => res.data)
  },
  // 订单详情
  delAddress(id) {
    return $http.get(config.api + 'address/del?address_id=' + id).then(res => res.data)
  },
  // 地址更新
  addressUpdate(params) {
    return $http.post(config.api + 'address/update', querystring.stringify(params)).then(res => res.data)
  },
  // 地址更新
  getAddress(id) {
    return $http.get(config.api + 'address/get_address?address_id=' + id).then(res => res.data)
  },
  // 确认收货
  orderReceived(id) {
    return $http.get(config.api + 'order/received?order_id=' + id).then(res => res.data)
  },
  // 获得免费配送信息
  getFree() {
    return $http.get(config.api + 'config/get_fee').then(res => res.data)
  },
  // 地址更新
  couponList() {
    return $http.get(config.api + 'coupon/list').then(res => res.data)
  }
}
